

export default {


    /**
     *  @func 拍照或从手机相册中选图
     *  @param {Object} query 请求参数
     *  @param {number} count =9  数量
     *  @param {array} sizeType =['original', 'compressed']  可以指定是原图还是压缩图，默认二者都有
     *  @param {array} sourceType =['album', 'camera']  可以指定来源是相册还是相机，默认二者都有
     *  @param {number} count =0.8  压缩质量，范围0～1，数值越小，质量越低，压缩率越高（仅对jpg有效）
     *  @returns {Promise} 返回一个Promise
     */
    chooseImage: function (query) {
        return new Promise(async (resolve, reject) => {
            wx.chooseImage({
                count: query && query.count ? query.count : 9,
                sizeType: query && query.sizeType && query.sizeType.length ? query.sizeType : ['original', 'compressed'],
                sourceType: query && query.sourceType && query.sourceType.length ? query.sourceType : ['album', 'camera'],
                quality: query && query.quality ? query.quality : 0.8,
                complete: function (res) {
                    resolve(res)
                    console.log("拍照或从手机相册中选图接口----", res);
                },
            });
        })
    },



    /**
     *  @func 获取本地图片接口
     *  @param {Object} query 请求参数
     *  @param {number} localId 图片的localID
     *  @returns {Promise} 返回一个Promise
     *  @returns {string} localData 图片的base64数据，可以用img标签显示
     */
    getLocalImgData: function (query) {
        return new Promise(async (resolve, reject) => {
            if (!query || !query.localId) {
                reject("缺少localId参数");
                return;
            }
            wx.getLocalImgData({
                count: query.localId,
                complete: function (res) {
                    resolve(res)
                    console.log("获取本地图片接口----", res);
                },
            });
        })
    },



    /**
     *  @func 预览图片接口
     *  @param {Object} query 请求参数
     *  @param {string} current 当前显示图片的http链接
     *  @param {array} urls 需要预览的图片http链接列表
     *  @param {array} hidePreviewMenuList 要隐藏的菜单项，只能隐藏“传播类”和“保护类”按钮，所有menu项见附录3
     *  @returns {Promise} 返回一个Promise
     *  @returns {string} localData 图片的base64数据，可以用img标签显示
     */
    getLocalImgData: function (query) {
        return new Promise(async (resolve, reject) => {
            wx.previewImage({
                current: query && query.current ? query.current : '',
                urls: query && query.urls && query.urls.length ? query.urls : [],
                hidePreviewMenuList: urls && query.hidePreviewMenuList && query.hidePreviewMenuList.length ? query.hidePreviewMenuList : [],
                complete: function (res) {
                    resolve(res)
                    console.log("预览图片----", res);
                },
            });
        })
    },



    /**
     *  @func 上传图片接口
     *  @param {Object} query 请求参数
     *  @param {string} localId 需要上传的图片的本地ID，由chooseImage接口获得
     *  @param {number} isShowProgressTips =1 默认为1，显示进度提示
     *  @returns {Promise} 返回一个Promise
     */
    uploadImage: function (query) {
        return new Promise(async (resolve, reject) => {
            wx.uploadImage({
                localId: query && query.localId ? query.localId : '',
                isShowProgressTips: query && query.isShowProgressTips ? query.isShowProgressTips : 1,
                complete: function (res) {
                    resolve(res)
                    console.log("上传图片----", res);
                },
            });
        })
    },



    /**
     *  @func 下载图片接口
     *  @param {Object} query 请求参数
     *  @param {string} serverId 需要下载的图片的服务器端ID，由uploadImage接口获得
     *  @param {number} isShowProgressTips =1 默认为1，显示进度提示
     *  @returns {Promise} 返回一个Promise
     *  @returns {String} localId 返回图片下载后的本地ID
     */
    downloadImage: function (query) {
        return new Promise(async (resolve, reject) => {
            wx.downloadImage({
                serverId: query && query.serverId ? query.serverId : '',
                isShowProgressTips: query && query.isShowProgressTips ? query.isShowProgressTips : 1,
                complete: function (res) {
                    resolve(res)
                    console.log("下载图片----", res);
                },
            });
        })
    },




    /**
     *  @func 预览文件
     *  @param {Object} query 请求参数
     *  @param {string} serverId 需要下载的图片的服务器端ID，由uploadImage接口获得
     *  @param {number} isShowProgressTips =1 默认为1，显示进度提示
     *  @returns {Promise} 返回一个Promise
     *  @returns {String} localId 返回图片下载后的本地ID
     */
    downloadImage: function (query) {
        return new Promise(async (resolve, reject) => {
            wx.downloadImage({
                serverId: query && query.serverId ? query.serverId : '',
                isShowProgressTips: query && query.isShowProgressTips ? query.isShowProgressTips : 1,
                complete: function (res) {
                    resolve(res)
                    console.log("预览文件----", res);
                },
            });
        })
    },


}